/**
 *
    算法描述：利用字符串的读写，通过第一行数，找到矩阵的长度n，再一个一个读取字符
    解决所需数据结构+算法：
**/
#include<iostream>
using namespace std;

int main() {
    int n, count = 0, i = 0;
    bool flag = false;
    string str;
    cin >> str;
    n = str.length();
    cout << n << " ";

    while(i < n) { //  处理第一个字符串
        if(flag == str.at(i)-'0')   count++;
        else {
            cout << count << " ";
            flag = !flag;
            count = 1; // 出现第一个不同字符，因此也需要计数1次
        }
        i++;
    }

    char ch;
    while(i < n * n) {
        cin >> ch;
        if(flag == ch - '0')    count++;
        else {
            cout << count << " ";
            flag = !flag;
            count = 1;
        }
        i++;
    }

    cout << count << endl; // 将最后一个答案进行输出

    return 0;
}